8642. Четырехзначные числа Армстронга

 

Четырехзначное число называется числом Армстронга, если сумма четвертых степеней его цифр равна самому числу.

Например: 8208 = 84 + 24  + 04 + 84, следовательно 8208 является числом Армстронга.

Выведите все числа Армстронга от a до b.

 

Вход. Два целых числа a и b (1000 ≤ ab ≤ 9999).

 

Выход. Выведите в одной строке все числа Армстронга в диапазоне от a до b.

 

Пример входа

Пример выхода

1000 3000

1634

 

 

РЕШЕНИЕ

циклы

 

Анализ алгоритма

Переберем числа от a до b. Для каждого числа i =  (aib) выделим цифры тысяч x, сотен y, десятков z и единиц u. Если число i является числом Армстронга (i = x4 + y4 + z4 + u4), то выводим его.

 

Реализация алгоритма

Читаем входные данные.

 

scanf("%d %d", &a, &b);

 

Перебираем числа от a до b.

 

for (i = a; i <= b; i++)

{

 

Выделяем цифры числа i = .

 

  x = a / 1000;

  y = i / 100 % 10;

  z = i / 10 % 10;

  u = i % 10;

 

Если число i является числом Армстронга (i = x4 + y4 + z4 + u4), то выводим его.

 

  if (x * x * x * x + y * y * y * y + z * z * z * z +

      u * u * u * u == i) printf("%d ", i);

}

 

printf("\n");

 

Python реализация

Читаем входные данные.

 

a, b = map(int, input().split())

 

Перебираем числа от a до b.

 

for i in range(a, b + 1):

 

Выделяем цифры числа i = .

 

  x = i // 1000

  y = (i // 100) % 10

  z = (i // 10) % 10

  u = i % 10

 

Если число i является числом Армстронга (i = x4 + y4 + z4 + u4), то выводим его.

 

  if x**4 + y**4 + z**4 + u**4 == i:

    print(i, end=" ")

 

print()